Curved Management (Zeiierman)█ Overview
The Curved Management (Zeiierman) is a trade management indicator tailored for traders looking to visualize their entry, stop loss, and take profit levels. Unique in its design, this indicator doesn't just display lines; it offers rounded or curved visualizations, setting it apart from conventional tools.
█ How It Works
At its core, this indicator leverages the power of the Average True Range (ATR), a metric for volatility, to establish logical stop-loss levels based on recent price action. By incorporating the ATR, the tool dynamically adapts to the market's changing volatility. What sets it apart is the unique curved visualization. Instead of the usual straight lines representing entry/sl levels, users can choose between rounded and straight edges for their take profit and stop loss levels. This aesthetic tweak gives the chart a cleaner look and offers a more intuitive understanding of risk management.
█ How to Apply the Indicator
Upon initially loading the indicator, a label appears that reads, "Set the 'xy' time and price for 'Curved Management (Zeiierman).'" This prompts you to click on the chart at your entry point. After selecting your entry point on the chart, the indicator will load. Ensure you adjust the trend direction in the settings panel based on whether you took a long or short position.
█ How to Use
Use the tool to manage your active position.
Long Entry
Short Entry
█ Settings
The indicator comes packed with various settings allowing customization:
Trade Direction
Decide the direction of the trade (long/short).
Reward multiplier
Sets the ratio for take profit relative to stop loss. Increasing this value will set your take profit further from the entry, and decreasing it will bring it closer.
Risk multiplier
Multiplier for calculating stop loss based on the ATR value. Increasing this makes your stop loss further from the entry, while decreasing brings it closer.
█ Related Free Scripts
Trade & Risk Management Tool
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
在腳本中搜尋"stop loss"
Liquidity Concepts [BigBeluga]The Liquidity Concepts indicator is designed to represent the liquidity on the chart using pivot points as potential stop-losses / liquidity grabs.
The indicator is facilitated by a market structure detector and pivot points to identify resting liquidity / stop-loss levels.
A liquidity grab or a stop-loss hunt is when retail traders place their stop-loss orders at recent highs / most recent highs or lows. This is a spot where big players attempt to push the market to trigger all the stop-loss orders and gain a better entry in their favor.
🔶 CALCULATION
The indicator uses the Higher Lower script made by @LonesomeTheBlue to determine these pivot points. When a pivot point is formed, it is displayed on the chart with the corresponding symbol (HH - HL - LH - LL). When one of these points is broken, a line is drawn between the pivot point and the candle that broke it.
A liquidity grab is only recognized after it has occurred, and it is represented with a box showing all the candles that were involved in the sweep / stop-loss hunt.
A pivot point is established only after the selected lookback period and cannot be printed beforehand in any manner. This ensures that it captures the highest point within the lookback period following the candle formation.
An HL (Higher Low) point is established when it is lower than an HH (Higher High) point, whereas an LH (Lower High) point is established when it is higher than an LL (Lower Low) point.
Boxes are formed in two different types: Major and Minor.
- Major boxes occur when LH or HL points are breached, with their high or low point crossing above or below in the specific lookback period.
- Minor boxes occur when HH or LL points are breached, with their high or low point crossing above or below in the specific lookback period.
Minor points are less efficient since they represent key highs and lows, and before taking out those liquidity levels, the HL and LH points should be cleared.
Representation of Pivot Point Formation:
Liquidity wicks are a minor representation of a stop-loss hunt during the retracement of a pivot point. This means that a pivot point is broken only by the wick and not by the entire body.
Bigger wick = more liquidity
Lower wick = less liquidity
Liquidity wicks can be used as trade confirmation or targets for your entry to enhance accuracy.
Users have the option to display candle coloring based on the currently detected trend.
🔶 VERIFICATION
Users have the option to specify the verification length for when the liquidity should occur. This means that if the length is set to 7, the indicator will search for the liquidity formation within the last 7 candles; otherwise, it will be considered invalid.
🔶 CONCEPTS
The whole idea is to help find possible zone of stop loss hunting helping having a better entry in our trading, we can utilize a lot more tools, and this shoud be used as confluence only
🔶 OPTIONS
Users have complete control over the settings, allowing them to:
- Disable pivot points.
- Disable the display of boxes.
- Disable liquidity wicks.
- Customize colors to their preferences.
- Adjust lookback settings for historical data analysis.
- Modify candle coloring settings.
- Adjust the text size of labels for better readability and customization.
🔶 RECAP
Box => Represents liquidity formation / stop-loss hunt
- Minor Box HH / LL point
- Major Box LH / HL point
Liquidity Wicks => Formed when a pivot point is broken only by the wick
BOS / CHoCH => Calculated using the pivot points from the @LonesomeTheBlue script
🔶 RELATED SCRIPTS
Price Action Concepts =>
Trend Confirmation StrategyThe profitability and uniqueness of a trading strategy depend on various factors including market conditions, risk management, and the strategy's ability to capitalize on price movements. I'll describe the strategy provided and highlight its potential benefits and differences compared to other strategies:
Strategy Overview:
The provided strategy combines three technical indicators: Supertrend, MACD, and VWAP. It aims to identify potential entry and exit points by confirming trend direction and considering the proximity to the VWAP level. The strategy also incorporates stop-loss and take-profit mechanisms, as well as a trailing stop.
Unique Aspects and Potential Benefits:
Trend Confirmation: The strategy uses both Supertrend and MACD to confirm the trend direction. This dual confirmation can increase the likelihood of accurate trend identification and filter out false signals.
VWAP Confirmation: The strategy considers the proximity of the price to the VWAP level. This dynamic level can act as a support or resistance and provide additional context for entry decisions.
Adaptive Stop Loss: The strategy sets a stop-loss range, which helps provide some tolerance for minor price fluctuations. This adaptive approach considers market volatility and helps prevent premature stop-loss triggers.
Trailing Stop: The strategy incorporates a trailing stop mechanism to lock in profits as the trade moves in the desired direction. This can potentially enhance profitability during strong trends.
Partial Profit Booking: While not explicitly implemented in the provided code, you could consider booking partial profits when the MACD shows a crossover in the opposite direction. This aspect could help secure gains while still keeping exposure to potential further price movements.
Key Differences from Other Strategies:
Dual Indicator Confirmation: The combination of Supertrend and MACD for trend confirmation is a unique aspect of this strategy. It adds an extra layer of filtering to enhance the accuracy of entry signals.
Dynamic VWAP: Incorporating the VWAP level into the decision-making process adds a dynamic element to the strategy. VWAP is often used by institutional traders, and its inclusion can provide insights into the market sentiment.
Adaptive Stop Loss and Trailing: The strategy's use of an adaptive stop-loss range and a trailing stop can help manage risk and protect profits more effectively during changing market conditions.
Partial Profit Booking: The suggestion to consider partial profit booking upon MACD crossovers in the opposite direction is a practical approach to secure gains while staying in the trade.
Caution and Considerations:
Backtesting: Before deploying any strategy in real trading, it's crucial to thoroughly backtest it on historical data to understand its performance under various market conditions.
Risk Management: While the strategy has built-in risk management mechanisms, it's essential to carefully manage position sizes and overall portfolio risk.
Market Conditions: No strategy works well in all market conditions. It's important to be flexible and adjust the strategy or refrain from trading during particularly volatile or unpredictable periods.
Continuous Monitoring: Even though the strategy includes automated components, continuous monitoring of the trades and market conditions is necessary.
Adaptability: Markets can change over time. Traders need to be prepared to adapt the strategy as necessary to stay aligned with evolving market dynamics.
DTR & ATR
Description
This ATR and DTR label is update of Existing Label provided by © ssksubam
Please See Notes on original Script Here :
Original Code is not mine but I have done few code changes which I believe will help everyone who are looking to add more labels together and save space on the chart
ATR & DTR Script is very helpful for Day Traders as I will explain in detail bellow
Following are changes I have incorporated
Previous Label took more space on the charts with Header and Footer.
I removed the Header and moved both DTR vs ATR descriptions on the same line, saving space on the chart.
I updated the code to remove => signs, which are self-explanatory as I will explain below.
I made the label in 1 single compact line for maximum space efficiency and aesthetics.
These changes improve the content's clarity and conciseness while optimizing space on the charts. If you have any further requests or need additional assistance, feel free to let me know!
What Does DTR Signify?
Stock ATR stands for Average True Range, which is a technical indicator used in trading and investment analysis. The Average True Range measures the volatility of a stock over a given period of time. It provides insights into the price movement and potential price ranges of the stock.
The ATR is calculated as the average of the true ranges over a specific number of periods. The true range is the greatest of the following three values:
The difference between the current high and the current low.
The absolute value of the difference between the current high and the previous close.
The absolute value of the difference between the current low and the previous close.
Traders and investors use ATR to assess the potential risk and reward of a stock. A higher ATR value indicates higher volatility and larger price swings, while a lower ATR value suggests lower volatility and smaller price movements. By understanding the ATR, traders can set appropriate stop-loss levels and make informed decisions about position sizing and risk management.
It's important to note that the ATR is not a directional indicator like moving averages or oscillators. Instead, it provides a measure of volatility, helping traders adapt their strategies to suit the current market conditions.
What Does ATR Signify?
The Average True Range (ATR) signifies the level of volatility or price variability in a particular financial asset, such as a stock, currency pair, or commodity, over a specific period of time. It provides valuable information to traders and investors regarding the potential risk and reward associated with the asset.
Here are the key significances of ATR:
Volatility Measurement: ATR measures the average price range between high and low prices over a specified timeframe. Higher ATR values indicate greater volatility, while lower values suggest lower volatility. Traders use this information to gauge the potential price movements and adjust their strategies accordingly.
Risk Assessment: A higher ATR value implies larger price swings, indicating increased market uncertainty and risk. Traders can use ATR to set appropriate stop-loss levels and manage risk by adjusting position sizes based on the current volatility.
Trend Strength: ATR can also be used to assess the strength of a trend. In an uptrend or downtrend, ATR tends to increase, indicating a more powerful price movement. Conversely, a declining ATR might signify a weakening trend or a consolidation period.
Range-Bound Market Identification: In a range-bound or sideways market, the ATR value tends to be relatively low, reflecting the lack of significant price movements. This information can be helpful for range-trading strategies.
Volatility Breakouts: Traders often use ATR to identify potential breakouts from consolidation patterns. When the ATR value expands significantly, it may indicate the beginning of a new trend or a breakout move.
Comparison between Assets: ATR allows traders to compare the volatility of different
How to use DTR & ATR for Trading
Using Average True Range (ATR) and Daily Trading Range (DTR) can be beneficial for day trading to assess potential price movements, manage risk, and identify trading opportunities. Here's how you can use both indicators effectively:
Calculate ATR and DTR: First, calculate the ATR and DTR values for the asset you are interested in trading. ATR is the average of true ranges over a specified period (e.g., 14 days), while DTR is the difference between the high and low prices of a single trading day.
Assess Volatility: Compare the ATR and DTR values to understand the current volatility of the asset. Higher values indicate increased volatility, while lower values suggest reduced volatility.
Setting Stop-Loss: Use ATR to set appropriate stop-loss levels. For example, you might decide to set your stop-loss a certain number of ATR points away from your entry point. This approach allows you to factor in market volatility when determining your risk tolerance.
Identify Trading Range: Analyze DTR to determine the typical daily price range of the asset. This information can help you identify potential support and resistance levels, which are essential for day trading strategies such as breakout or range trading.
Breakout Strategies: ATR can assist in identifying potential breakout opportunities. When ATR values increase significantly, it suggests an expansion in volatility, which may indicate an upcoming breakout from a trading range. Look for breakouts above resistance or below support levels with higher than usual ATR values.
Scalping Strategies: For scalping strategies, where traders aim to profit from small price movements within a single trading session, knowing the typical DTR can help set reasonable profit targets and stop-loss levels.
Confirming Trend Strength: In day trading, you may encounter short-term trends. Use ATR to assess the strength of these trends. If the ATR is rising, it suggests a strong trend, while a declining ATR may indicate a weakening trend or potential reversal.
Risk Management: Both ATR and DTR can aid in risk management. Determine your position size based on the current ATR value to align it with your risk tolerance. Additionally, understanding the DTR can help you avoid overtrading during periods of low volatility.
Combine with Other Indicators: ATR and DTR work well when used in conjunction with other technical indicators like moving averages, Bollinger Bands, or RSI. Combining multiple indicators can provide a mor
CCI+EMA Strategy with Percentage or ATR TP/SL [Alifer]This is a momentum strategy based on the Commodity Channel Index (CCI), with the aim of entering long trades in oversold conditions and short trades in overbought conditions.
Optionally, you can enable an Exponential Moving Average (EMA) to only allow trading in the direction of the larger trend. Please note that the strategy will not plot the EMA. If you want, for visual confirmation, you can add to the chart an Exponential Moving Average as a second indicator, with the same settings used in the strategy’s built-in EMA.
The strategy also allows you to set internal Stop Loss and Take Profit levels, with the option to choose between Percentage-based TP/SL or ATR-based TP/SL.
The strategy can be adapted to multiple assets and timeframes:
Pick an asset and a timeframe
Zoom back as far as possible to identify meaningful positive and negative peaks of the CCI
Set Overbought and Oversold at a rough average of the peaks you identified
Adjust TP/SL according to your risk management strategy
Like the strategy? Give it a boost!
Have any questions? Leave a comment or drop me a message.
CAUTIONARY WARNING
Please note that this is a complex trading strategy that involves several inputs and conditions. Before using it in live trading, it is highly recommended to thoroughly test it on historical data and use risk management techniques to safeguard your capital. After backtesting, it's also highly recommended to perform a first live test with a small amount. Additionally, it's essential to have a good understanding of the strategy's behavior and potential risks. Only risk what you can afford to lose .
USED INDICATORS
1 — COMMODITY CHANNEL INDEX (CCI)
The Commodity Channel Index (CCI) is a technical analysis indicator used to measure the momentum of an asset. It was developed by Donald Lambert and first published in Commodities magazine (now Futures) in 1980. Despite its name, the CCI can be used in any market and is not just for commodities. The CCI compares current price to average price over a specific time period. The indicator fluctuates above or below zero, moving into positive or negative territory. While most values, approximately 75%, fall between -100 and +100, about 25% of the values fall outside this range, indicating a lot of weakness or strength in the price movement.
The CCI was originally developed to spot long-term trend changes but has been adapted by traders for use on all markets or timeframes. Trading with multiple timeframes provides more buy or sell signals for active traders. Traders often use the CCI on the longer-term chart to establish the dominant trend and on the shorter-term chart to isolate pullbacks and generate trade signals.
CCI is calculated with the following formula:
(Typical Price - Simple Moving Average) / (0.015 x Mean Deviation)
Some trading strategies based on CCI can produce multiple false signals or losing trades when conditions turn choppy. Implementing a stop-loss strategy can help cap risk, and testing the CCI strategy for profitability on your market and timeframe is a worthy first step before initiating trades.
2 — AVERAGE TRUE RANGE (ATR)
The Average True Range (ATR) is a technical analysis indicator that measures market volatility by calculating the average range of price movements in a financial asset over a specific period of time. The ATR was developed by J. Welles Wilder Jr. and introduced in his book “New Concepts in Technical Trading Systems” in 1978.
The ATR is calculated by taking the average of the true range over a specified period. The true range is the greatest of the following:
The difference between the current high and the current low.
The difference between the previous close and the current high.
The difference between the previous close and the current low.
The ATR can be used to set stop-loss orders. One way to use ATR for stop-loss orders is to multiply the ATR by a factor (such as 2 or 3) and subtract it from the entry price for long positions or add it to the entry price for short positions. This can help traders set stop-loss orders that are more adaptive to market volatility.
3 — EXPONENTIAL MOVING AVERAGE (EMA)
The Exponential Moving Average (EMA) is a type of moving average (MA) that places a greater weight and significance on the most recent data points.
The EMA is calculated by taking the average of the true range over a specified period. The true range is the greatest of the following:
The difference between the current high and the current low.
The difference between the previous close and the current high.
The difference between the previous close and the current low.
The EMA can be used by traders to produce buy and sell signals based on crossovers and divergences from the historical average. Traders often use several different EMA lengths, such as 10-day, 50-day, and 200-day moving averages.
The formula for calculating EMA is as follows:
Compute the Simple Moving Average (SMA).
Calculate the multiplier for weighting the EMA.
Calculate the current EMA using the following formula:
EMA = Closing price x multiplier + EMA (previous day) x (1-multiplier)
STRATEGY EXPLANATION
1 — INPUTS AND PARAMETERS
The strategy uses the Commodity Channel Index (CCI) with additional options for an Exponential Moving Average (EMA), Take Profit (TP) and Stop Loss (SL).
length : The period length for the CCI calculation.
overbought : The overbought level for the CCI. When CCI crosses above this level, it may signal a potential short entry.
oversold : The oversold level for the CCI. When CCI crosses below this level, it may signal a potential long entry.
useEMA : A boolean input to enable or disable the use of Exponential Moving Average (EMA) as a filter for long and short entries.
emaLength : The period length for the EMA if it is used.
2 — CCI CALCULATION
The CCI indicator is calculated using the following formula:
(src - ma) / (0.015 * ta.dev(src, length))
src is the typical price (average of high, low, and close) and ma is the Simple Moving Average (SMA) of src over the specified length.
3 — EMA CALCULATION
If the useEMA option is enabled, an EMA is calculated with the given emaLength .
4 — TAKE PROFIT AND STOP LOSS METHODS
The strategy offers two methods for TP and SL calculations: percentage-based and ATR-based.
tpSlMethod_percentage : A boolean input to choose the percentage-based method.
tpSlMethod_atr : A boolean input to choose the ATR-based method.
5 — PERCENTAGE-BASED TP AND SL
If tpSlMethod_percentage is chosen, the strategy calculates the TP and SL levels based on a percentage of the average entry price.
tp_percentage : The percentage value for Take Profit.
sl_percentage : The percentage value for Stop Loss.
6 — ATR-BASED TP AND SL
If tpSlMethod_atr is chosen, the strategy calculates the TP and SL levels based on Average True Range (ATR).
atrLength : The period length for the ATR calculation.
atrMultiplier : A multiplier applied to the ATR to set the SL level.
riskRewardRatio : The risk-reward ratio used to calculate the TP level.
7 — ENTRY CONDITIONS
The strategy defines two conditions for entering long and short positions based on CCI and, optionally, EMA.
Long Entry: CCI crosses below the oversold level, and if useEMA is enabled, the closing price should be above the EMA.
Short Entry: CCI crosses above the overbought level, and if useEMA is enabled, the closing price should be below the EMA.
8 — TP AND SL LEVELS
The strategy calculates the TP and SL levels based on the chosen method and updates them dynamically.
For the percentage-based method, the TP and SL levels are calculated as a percentage of the average entry price.
For the ATR-based method, the TP and SL levels are calculated using the ATR value and the specified multipliers.
9 — EXIT CONDITIONS
The strategy defines exit conditions for both long and short positions.
If there is a long position, it will be closed either at TP or SL levels based on the chosen method.
If there is a short position, it will be closed either at TP or SL levels based on the chosen method.
Additionally, positions will be closed if CCI crosses back above oversold in long positions or below overbought in short positions.
10 — PLOTTING
The script plots the CCI line along with overbought and oversold levels as horizontal lines.
The CCI line is colored red when above the overbought level, green when below the oversold level, and white otherwise.
The shaded region between the overbought and oversold levels is plotted as well.
VolatilityThis script shows three different calculations for volatility.
All three can be used as Stop-Loss...
- Absolute Price Changes
- Maximum Price Fluctuation
- and every one should know Average True Range
The script has a dark and light theme.
And the colors can be changed and each can be deactivated.
On top of that I stumbled over the fact that when MPF crosses over APC
this could result in a significant change in price and could also be used as an entry or exit.
This is also highlighted by default. You can change its background color and you can deactivate it too.
ACP measures volatility over most recent close prices.
This is excellent for comparing volatility.
It includes both frequency and magnitude.
In other words: Sum of differences between second to last close price and last close price as absolute value for 'n' bars.
MPF measures volatility over most recent candles, which could be used as an estimate of risk.
It may also be effective as the basis for a stop-loss or take-profit,
like the ATR but it ignores the frequency of directional changes within the time interval.
In other words: The difference between the highest high and lowest low over 'n' bars.
When you don't know what the ATR is then you can look at this link .
LowFinder_PyraMider_V2This strategy is a result of an exploration to experiment with other ways to detect lows / dips in the price movement, to try out alternative ways to exit and stop positions and a dive into risk management. It uses a combination of different indicators to detect and filter the potential lows and opens multiple positions to spread the risk and opportunities for unrealized losses or profits. This script combines code developed by fellow Tradingview community_members.
LowFinder
The lows in the price movement are detected by the Low finder script by RafaelZioni . It finds the potential lows based on the difference between RSI and EMA RSI. The MTF RSI formula is part of the MTFindicators library developed by Peter_O and is integrated in the Low finder code to give the option to use the RSI of higher timeframes. The sensitivity of the LowFinder is controlled by the MA length. When potential lows are detected, a Moving Average, a MTF Stochastic (based the the MTFindiicators by Peter_O) and the average price level filter out the weak lows. In the settings the minimal percentage needed for a low to be detected below the average price can be specified.
Order Sizing and Pyramiding
Pyramiding, or spreading multiple positions, is at the heart of this strategy and what makes it so powerful. The order size is calculated based on the max number of orders and portfolio percentage specified in the input settings. There are two order size modes. The ‘base’ mode uses the same base quantity for each order it opens, the ‘multiply’ mode multiplies the quantity with each order number. For example, when Long 3 is opened, the quantity is multiplied by 3. So, the more orders the bigger the consecutive order sizes. When using ‘multiply’ mode the sizes of the first orders are considerably lower to make up for the later bigger order sizes. There is an option to manually set a fixed order size but use this with caution as it bypasses all the risk calculations.
Stop Level, Take Profit, Trailing Stop
The one indicator that controls the exits is the Stop Level. When close crosses over the Stop Level, the complete position is closed and all orders are exited. The Stop Level is calculated based on the highest high given a specified candle lookback (settings). There is an option to deviate above this level with a specified percentage to tweak for better results. You can activate a Take Profit / Trailing Stop. When activated and close crosses the specified percentage, the Stop Level logic changes to a trailing stop to gain more profits. Another option is to use the percentage as a take profit, either when the stop level crosses over the take profit or close. With this option active, you can make this strategy more conservative. It is active by default.
And finally there is an option to Take Profit per open order. If hit, the separate orders close. In the current settings this option is not used as the percentage is 10%.
Stop Loss
I published an earlier version of this script a couple of weeks ago, but it got hidden by the moderators. Looking back, it makes sense because I didn’t pay any attention to risk management and save order sizing. This resulted in unrealistic results. So, in this script update I added a Stop Loss option. There are two modes. The ‘average price’ mode calculates the stop loss level based on a given percentage below the average price of the total position. The ‘equity’ mode calculates the stop loss level based on a given percentage of your equity you want to lose. By default, the ‘equity’ mode is active. By tweaking the percentage of the portfolio size and the stop loss equity mode, you can achieve a quite low risk strategy set up.
Variables in comments
To sent alerts to my exchange I use a webhook server. This works with a sending the information in the form of a comment. To be able to send messages with different quantities, a variable is added to the comment. This makes it possible to open different positions on the exchange with increasing quantities. To test this the quantities are printed in the comment and the quantities are switched off in the style settings.
This code is a result of a study and not intended for use as a worked out and full functioning strategy. Use it at your own risk. To make the code understandable for users that are not so much introduced into pine script (like me), every step in the code is commented to explain what it does. Hopefully it helps.
Enjoy!
MLExtensionsLibrary "MLExtensions"
normalizeDeriv(src, quadraticMeanLength)
Returns the smoothed hyperbolic tangent of the input series.
Parameters:
src : The input series (i.e., the first-order derivative for price).
quadraticMeanLength : The length of the quadratic mean (RMS).
Returns: nDeriv The normalized derivative of the input series.
normalize(src, min, max)
Rescales a source value with an unbounded range to a target range.
Parameters:
src : The input series
min : The minimum value of the unbounded range
max : The maximum value of the unbounded range
Returns: The normalized series
rescale(src, oldMin, oldMax, newMin, newMax)
Rescales a source value with a bounded range to anther bounded range
Parameters:
src : The input series
oldMin : The minimum value of the range to rescale from
oldMax : The maximum value of the range to rescale from
newMin : The minimum value of the range to rescale to
newMax : The maximum value of the range to rescale to
Returns: The rescaled series
color_green(prediction)
Assigns varying shades of the color green based on the KNN classification
Parameters:
prediction : Value (int|float) of the prediction
Returns: color
color_red(prediction)
Assigns varying shades of the color red based on the KNN classification
Parameters:
prediction : Value of the prediction
Returns: color
tanh(src)
Returns the the hyperbolic tangent of the input series. The sigmoid-like hyperbolic tangent function is used to compress the input to a value between -1 and 1.
Parameters:
src : The input series (i.e., the normalized derivative).
Returns: tanh The hyperbolic tangent of the input series.
dualPoleFilter(src, lookback)
Returns the smoothed hyperbolic tangent of the input series.
Parameters:
src : The input series (i.e., the hyperbolic tangent).
lookback : The lookback window for the smoothing.
Returns: filter The smoothed hyperbolic tangent of the input series.
tanhTransform(src, smoothingFrequency, quadraticMeanLength)
Returns the tanh transform of the input series.
Parameters:
src : The input series (i.e., the result of the tanh calculation).
smoothingFrequency
quadraticMeanLength
Returns: signal The smoothed hyperbolic tangent transform of the input series.
n_rsi(src, n1, n2)
Returns the normalized RSI ideal for use in ML algorithms.
Parameters:
src : The input series (i.e., the result of the RSI calculation).
n1 : The length of the RSI.
n2 : The smoothing length of the RSI.
Returns: signal The normalized RSI.
n_cci(src, n1, n2)
Returns the normalized CCI ideal for use in ML algorithms.
Parameters:
src : The input series (i.e., the result of the CCI calculation).
n1 : The length of the CCI.
n2 : The smoothing length of the CCI.
Returns: signal The normalized CCI.
n_wt(src, n1, n2)
Returns the normalized WaveTrend Classic series ideal for use in ML algorithms.
Parameters:
src : The input series (i.e., the result of the WaveTrend Classic calculation).
n1
n2
Returns: signal The normalized WaveTrend Classic series.
n_adx(highSrc, lowSrc, closeSrc, n1)
Returns the normalized ADX ideal for use in ML algorithms.
Parameters:
highSrc : The input series for the high price.
lowSrc : The input series for the low price.
closeSrc : The input series for the close price.
n1 : The length of the ADX.
regime_filter(src, threshold, useRegimeFilter)
Parameters:
src
threshold
useRegimeFilter
filter_adx(src, length, adxThreshold, useAdxFilter)
filter_adx
Parameters:
src : The source series.
length : The length of the ADX.
adxThreshold : The ADX threshold.
useAdxFilter : Whether to use the ADX filter.
Returns: The ADX.
filter_volatility(minLength, maxLength, useVolatilityFilter)
filter_volatility
Parameters:
minLength : The minimum length of the ATR.
maxLength : The maximum length of the ATR.
useVolatilityFilter : Whether to use the volatility filter.
Returns: Boolean indicating whether or not to let the signal pass through the filter.
backtest(high, low, open, startLongTrade, endLongTrade, startShortTrade, endShortTrade, isStopLossHit, maxBarsBackIndex, thisBarIndex)
Performs a basic backtest using the specified parameters and conditions.
Parameters:
high : The input series for the high price.
low : The input series for the low price.
open : The input series for the open price.
startLongTrade : The series of conditions that indicate the start of a long trade.`
endLongTrade : The series of conditions that indicate the end of a long trade.
startShortTrade : The series of conditions that indicate the start of a short trade.
endShortTrade : The series of conditions that indicate the end of a short trade.
isStopLossHit : The stop loss hit indicator.
maxBarsBackIndex : The maximum number of bars to go back in the backtest.
thisBarIndex : The current bar index.
Returns: A tuple containing backtest values
init_table()
init_table()
Returns: tbl The backtest results.
update_table(tbl, tradeStatsHeader, totalTrades, totalWins, totalLosses, winLossRatio, winrate, stopLosses)
update_table(tbl, tradeStats)
Parameters:
tbl : The backtest results table.
tradeStatsHeader : The trade stats header.
totalTrades : The total number of trades.
totalWins : The total number of wins.
totalLosses : The total number of losses.
winLossRatio : The win loss ratio.
winrate : The winrate.
stopLosses : The total number of stop losses.
Returns: Updated backtest results table.
RSI Overbought/Oversold + Divergence IndicatorDESCRIPTION:
This script combines the Relative Strength Index ( RSI ), Moving Average and Divergence indicator to make a better decision when to enter or exit a trade.
- The Moving Average line (MA) has been made hidden by default but enhanced with an RSIMA cloud.
- When the RSI is above the selected MA it turns into green and when the RSI is below the select MA it turns into red.
- When the RSI is moving into the Overbought or Oversold area, some highlighted areas will appear.
- When some divergences or hidden divergences are detected an extra indication will be highlighted.
- When the divergence appear in the Overbought or Oversold area the more weight it give to make a decision.
- The same color pallet has been used as the default candlestick colors so it looks familiar.
HOW TO USE:
The prerequisite is that we have some knowledge about the Elliot Wave Theory, the Fibonacci Retracement and the Fibonacci Extension tools.
Wave 1
(1) When we receive some buy signals we wait until we receive some extra indications.
(2) On the RSI Overbought/Oversold + Divergence Indicator we can see a Bullish Divergence and our RSI is changing from red to green ( RSI is higher then the MA).
(3) If we are getting here into the trade then we need to use a stop loss. We put our stop loss 1 a 2 pips just below the lowest wick. We also invest maximum 50% of the total amount we want to invest.
Wave 2
(4) Now we wait until we see a clear reversal and here we starting to use the Fibonacci Retracement tool. We draw a line from the lowest point of wave(1) till the highest point of wave (1). When we are retraced till the 0.618 fib also called the golden ratio we check again the RSI Overbought/Oversold + Divergence Indicator. When we see a reversal we do our second buy. We set again a stop loss just below the lowest wick (this is the yellow line on the chart). We also move the stop loss we have set in step (3) to this level.
Wave 3
(5) To identify how far the uptrend can go we need to use the Fibonacci Extension tool. We draw a line from the lowest point of wave(1) till the highest point of wave (1) and draw it back to the lowest point of wave (2). Wave (3) is most of the time the longest wave and can go till it has reached the 1.618 or 2.618 fib. On the 1.618 we can take some profit. If we don't want to sell we move our stop loss to the 1 fib line (yellow line on the chart).
(6) We wait until we see a clear reversal on the Overbought/Oversold + Divergence Indicator and sell 33% to 50% of our investment.
Wave 4
(7) Now we wait again until we see a clear reversal and here we starting to use the Fibonacci Retracement tool. We draw a line from the lowest point of wave(2) till the highest point of wave (3). When we are retraced till the 0.618 fib also called the golden ratio we check again the RSI Overbought/Oversold + Divergence Indicator. When we see a reversal we buy again. We set again a stop loss just below the lowest wick (this is the yellow line on the chart).
(8) If we bought at the first reversal ours stop los was triggered (9) and we got out of the trade.
(9) If we did not bought at step (7) because our candle did not hit the 0.618 fib or we got stopped out of the trade we buy again at the reversal.
Wave 5
(10) To identify how far the uptrend can go we need to use the Fibonacci Extension tool. We draw a line from the lowest point of wave(2) till the highest point of wave (3) and draw it back to the lowest point of wave (4). Most of the time wave 5 goes up till it has reached the 1 fib. And that is the point where we got out of the trade with all of our investment. In this trade we got out of the trade a bit earlier. We received the sell signals and got a reversal on the Overbought/Oversold + Divergence Indicator.
We are hoping you learned something so you can make better decisions when to get into or out of a trade.
If you have any question just drop it into the comments below.
FEATURES:
• You can show/hide the RSI .
• You can show/hide the MA.
• You can show/hide the lRSIMA cloud.
• You can show/hide the Stoch RSI cloud.
• You can show/hide and adjust the Overbought and Oversold zones.
• You can show/hide and adjust the Overbought Extended and Oversold Extended zones.
• You can show/hide the Overbought and Oversold highlighted zones.
• Etc...
HOW TO GET ACCESS TO THE SCRIPT:
• Favorite the script and add it to your chart.
REMARKS:
• This advice is NOT financial advice.
• We do not provide personal investment advice and we are not a qualified licensed investment advisor.
• All information found here, including any ideas, opinions, views, predictions, forecasts, commentaries, suggestions, or stock picks, expressed or implied herein, are for informational, entertainment or educational purposes only and should not be construed as personal investment advice.
• We will not and cannot be held liable for any actions you take as a result of anything you read here.
• We only provide this information to help you make a better decision.
• While the information provided is believed to be accurate, it may include errors or inaccuracies.
Good Luck and have fun,
The CryptoSignalScanner Team
Position Tool█ OVERVIEW
This script is an interactive measurement tool that can be used to evaluate or keep track of trades. Like the long and short position drawing tools, it calculates a risk reward ratio and a risk-adjusted position size from the entry, stop and take profit levels, but it also does much more:
• It can be used to configure long or short trades.
• All monetary values can be expressed in any number of currencies.
• The value of tick/pip movement (which varies with the position's size) is displayed in the currency you have selected.
• The CAGR ( Compound Annual Growth Rate ) for the trade can be displayed.
• It does live tracking of the position.
• You can configure alerts on entries and exits.
█ HOW TO USE IT
Load the indicator on an active chart (see here if you don't know how).
When you first load this script on a chart, you will enter an interactive selection mode where the script asks you to pick three points in price and time on your chart by clicking on the chart. Directions will appear in a blue box at the bottom of the screen with each click of the mouse. The first selection is the entry point for the trade you are considering, which takes into account both the time and level you choose, the next are the take profit and stop levels. Once you have selected all three points, the script will draw trade zones and labels containing the trade metrics. The script determines if the trade is a long or short from the position of the take profit and stop loss levels in relation to the entry price. If the take profit level is above the entry price, the stop must be below and vice versa, otherwise an error occurs.
You can change levels by dragging the handles that appear when you select the indicator, or by entering new values in the script's settings. The only way to re-enter interactive mode is to re-add the indicator to your chart.
Once you place the position tool on a chart, it will appear at the same levels on all symbols you use. If your scale is not set to "Scale price chart only", the position tool's levels will be taken into account when scaling the chart, which can cause the symbol's bars to be compressed. If your scale is set to "Scale price chart only", the position tool will still be there, but it will not impact the scale of the chart's bars, so you won't see it if it sits outside the symbol's price scale.
If you select the position tool on your chart and delete it, this will also delete the indicator from the chart. You will need to re-add it if you want to draw another position tool. You can add multiple instances of the indicator if you need a position tool on more than one of your charts.
█ FEATURES
Display
The position tool displays the following information for entries:
• The entry's price level with an '@' sign before it.
• Open or Closed P&L : For an open trade, the "Open P&L" displays the difference in money value between the entry level and the chart's current price.
For a closed trade, the "Closed P&L" displays the realized P&L on the trade.
• Quantity : The trade size, which takes into account the risk tolerance you set in the script's settings.
• RR : The reward to risk ratio expresses the relationship of the distance between the entry and the take profit level vs the entry and the stop level.
Example: A $100 stop with a $100 target will have a ratio of 1:1, whereas a $200 target with the same stop will have a 2:1 ratio.
• Per tick/pip : Represents the money value of a tick or pip movement.
• CAGR : The Compound Annual Growth Rate will be displayed on the main order label on trades that exceed one day in duration.
This value is calculated the same way as in our CAGR Custom Range indicator.
If the trade duration is less than one day, the metric will not be present in the display.
The stop and take profit levels display:
• Their price level with an '@' sign before it.
• Their distance from the entry in money value, percentage and ticks/pips.
• The projected end money value of the position if the level is reached. These values are calculated based on the trade size and the currency.
Currency adjustments
This indicator modifies the trade label's colors and values based on the final Profit and Loss (P&L), which considers the dynamic exchange rate between base and conversion currencies in its calculations when the conversion currency is a specified value other than the default. Depending on the cross rate between the base and account currencies, this process can yield a negative P&L on an otherwise successful simulated trade.
For instance, if your account is in currency XYZ, you might buy 10 Apple shares at $150 each, with the XYZ to USD exchange rate being 2:1. This purchase would cost you 3000 units of XYZ. Suppose that later on, the shares appreciate to $170 each, and you decide to sell. One might expect this trade to result in profit. However, if the exchange rate has now equalized to 1:1, the return on selling the shares, calculated in XYZ, would only be 1700 units, resulting in a loss of 1300 units XYZ.
The indicator will mark the P&L and the target labels in red in such cases, regardless of whether the market price reached the profit target, as the trade produced a net loss due to reduced funds after currency conversion. Conversely, an otherwise unsuccessful position can result in a net profit in the account currency due to conversion rate fluctuations. The final losses or gains appear in the label metrics, and the corresponding color coding reflects the trade's success or failure.
Settings
The settings in the "Trade sizing" section are used to calculate the position size and the monetary value of trades. Two types of risk can be chosen from the menu; a percentage based risk calculation, or a fixed money value. The risk is used to calculate the quantity of units to purchase to achieve that level of risk exposure. Example: An account size of $1000 and 10% risk will have a projected end amount of $900 if the stop loss is hit. The quantity is a product of this relationship; a projected number of units to allow for the equivalent of $100 of risk exposure over the change in price from the entry to the stop value.
The "Trade levels" allow you to manually set the entry, take profit and stop levels of an existing position tool on your chart.
You can control the appearance of the tool and the values it displays in the settings following these first two sections.
Alerts
Three alerts that will trigger when you configure an alert on this indicator. The first will send an alert when the entry price is breached by price action if that price has not already been breached in the previous price history. This is dependant on the entry location you select when placing the indicator on the chart. The other two alerts will trigger when either the stop loss or the take profit level is breached to signal that a trade exit has occurred.
█ NOTES FOR Pine Script™ CODERS
• Interactive inputs are implemented for input.time() and input.price() . These specialized input functions allow users to interact with a script.
You can create one interactive input for both time and price values by using the same `inline` argument in a pair of input.time() and input.price() function calls.
• We use the `cagr()` function from our ta library.
• The script uses the runtime.error() function to throw an error if the stop and limit prices are not placed on opposing sides of the entry price.
• We use the `currency` parameter in a request.security() call to convert currencies.
Look first. Then leap.
Risk Management Strategy TemplateThis strategy is intended to be used as a base template for building new strategies.
It incorporates the following features:
Risk management:
Configurable X% loss per stop loss
Configurable R:R ratio
Trade entry:
Calculated position size based on risk tolerance
Trade exit:
Stop Loss currently configurable ATR multiplier but can be replaced based on strategy
Take Profit calculated from Stop Loss using R:R ratio
Backtesting:
Configurable backtesting range by date
Trade drawings:
TP/SL boxes drawn for all trades. Can be turned on and off
Trade exit information labels. Can be turned on and off
NOTE: Trade drawings will only be applicable when using overlay strategies
Debugging:
Includes section with useful debugging techniques
Strategy conditions
Trade entry:
LONG
C1: Price is above EMA line
C2: RSI is crossing out of oversold area
SHORT
C1: Price is below EMA line
C2: RSI is crossing out of overbought area
Trade exit:
Stop Loss: Stop Loss ATR multiplier is hit
Take Profit: R:R multiplier * Stop Loss is hit
The idea is to use RSI to catch pullbacks within the main trend.
Note that this strategy is intended to be a simple base strategy for building upon. It was not designed to be traded in its current form.
Loft Strategy V4This strategy is an advanced version of the Loft Strategy V1, I shared earlier. (Loft Strategy V1 consists of a kalman filter (by alexgrover ) and a "stop and reverse" line which is following and the kalman filter. If the price goes in the same direction as the position side, the "stop and reverse" line approaches the kalman filter as set on the "Approach Decrease Step" parameter.)
In addition to the previous version, it includes a martingale like deviation and multiple take-profit.
Here it is some parameters definitions of the strategy:
Kalman Filter: The higher this parameter, the faster and more aggressive the filter. Otherwise the filter goes very smoothly
Beginning Approach: First approximation as a percentage of stop-n-reverse line
Final Approach: Minimum approximation of stop-n-reverse line
Approach Decrease Step: If the price moves in the same direction as the strategy, the approach percentage is reduced by this parameter. Otherwise nothing do
Base Order Quantity: Initial capital of position
Max Safe Order Attempt: This parameter determines the maximum number of times the strategy will raise the bet after losing in a row.
Safe Order Deviation: if the last trade is loss, multiply the bet by this parameter (aka. martingale factor)
Profit Deviation: if last trade in loss, multiply the take-profit points
Max Order Quantity: Maximum capital allowed for a position
TP1, TP2, TP3 : Take profit spots in percentage
QT1, QT2, QT3: Amount of take-profit spots
Stop Loss: Maximum stop loss allowed for a trade
Long Entry, Short Entry: Only long side, only short side or both side
Safe Stop After TP2: If the price reaches the TP2 point, move the stop-loss point to the entry price.
Safe Stop After TP1: If the price reaches TP1, move the stop-loss point to the stop-n-reverse line.
Double SupertrendThis strategy is based on a custom indicator that was created based on the Supertrend indicator. At its core, there are always 2 super trend indicators with different factors to reduce market noise (false signals).
The strategy/indicator has some parameters to improve the signals and filters.
TECHNICAL ANALYSIS
☑ Show Indicators
This option will enable/disable the Supertrend indicators on the chart.
☑ Length
The length will be used on the Supertrend Indicator to calculate its values.
☑ Dev Fast
The fast deviation or factor from one of the super trend indicators. This will be the leading indicator for entry signals, as well as for the exit signals.
☑ Dev Slow
The slow deviation or factor from one of the super trend indicators. This will be the confirmation indicator for entry and exit signals.
☑ Exit Type
It's possible to select from 4 options for the exit signals. Exit signals always take profit target.
☑ ⥹ Reversals
This option will make the strategy/indicator calculate the exit signals based on the difference between the given period's highest and lowest candle value (see Period on this list). It's displayed on the chart with the cross. As it's possible to verify in the image below, there are multiple exit spots for every entry.
☑ ⥹ ATR
Using ATR as a base indicator for exit signals will make the strategy/indicator place limit/stop orders. Candle High + ATR for longs, Candle Low - ATR for shorts. The strategy will show the ATR level for take profit and stick with it until the next signal. This way, the take profit value remains based on the candle of the entry signal.
☑ ⥹ Fast Supertrend
With this option selected, the exit signals will be based on the Fast Supertsignal value, mirrored to make a profit.
☑ ⥹ Slow Supertrend
With this option selected, the exit signals will be based on the Slow Supertsignal value, which is mirrored to take profit.
☑ Period
This will represent the number of candles used on the exit signals when Reversals is selected as Exit Type. It's also used to calculate the gradient used on the Fills and Supertrend signals.
☑ Multiplier
It's used on the take profit when the ATR option is selected on the Exit Type.
STRATEGY
☑ Use The Strategy
This will enable/disable the strategy to show the trades calculations.
☑ Show Use Long/Short Entries
Option to make the strategy show/use Long or Short signals. Available only if Use The Strategy is enabled
☑ Show Use Exit Long/Short
Option to make the strategy show/use Exit Long or Short signals (valid when Reversals option is selected on the Exit Type). Available only if Use The Strategy is enabled
☑ Show Use Add Long/Short
Option to make the strategy show/use Add Long or Short signals. With this option enabled, the strategy will place multiple trades in the same direction, almost the same concept as a pyramiding parameter. It's based on the Fast Supersignal when the candle fails to cross and reverses. Available only if Use The Strategy is enabled
☑ Trades Date Start/End
The date range that the strategy will check the market data and make the trades
HOW TO USE
It's very straightforward. A long signal will appear as a green arrow with a text Long below it. A short signal will appear as a red arrow with a text Short above it. It's ideal to wait for the candle to finish to validate the signal.
The exit signals are optional but give a good idea of the configuration used when backtesting. Each market and timeframe will have its own configuration for the best results. On average, sticking to ATR as an exit signal will have less risk than the other options.
☑ Entry Signals
Follow the arrows with Long/Short texts on them. Wait for the signal candle to close to validate the entry.
☑ Exit Signals
Use them to close your position or to trail stop your orders and maximize profits. Select the exit type suitable for each timeframe and market
☑ Add Entries
It's possible to increase the position following the add margin/contracts based on the Add signals. Not mandatory, but may work as reentries or late entries using the same signal.
☑ What about Stop Loss?
The stop-loss levels were not included as a separated signal because it's already in the chart. There are some possible ideas for the stop loss:
☑⥹ Candle High/Low (2nd recommend option)
When it's a Long signal from the entry signal candle, the stop loss can be the Low value of the same candle. Very tight stop loss in some cases, depending on the candle range
☑⥹ Local Top/Bottom
Selecting the local top/bottom as stop loss will give the strategy more room for false breakouts or reversals, keeping the trade open and minimizing noises. Increases the risk
☑⥹ Fast Supertrend (1st recommend option)
The fast supertrend can be used as stop-loss as well. making it a moving level and working close to trail stop management
☑⥹ Fixed Percentage
It's possible to use a fixed risk percentage for the trades, making the risk easier to control and project. Since the market volatility is not fixed, this may affect the accuracy of the trades
☑⥹ Based on the ATR (3rd recommend option)
When the exit type option ATR is selected, it will display the take profit level for that entry. Just mirror that value and put it as stop-loss, or multiply that amount by 1.5 to have more room for market noise.
EXAMPLE CONFIGURATIONS
Here are some configuration ideas for some markets (all of them are from crypto, especially futures markets)
BTCUSDT 15min - Default configuration
BTCUSDT 1h - Length 10 | Dev Fast 3 | Dev Slow 4 | Exit Type ATR | Period 50 | Multiplier 1
BTCUSDT 4h - Length 10 | Dev Fast 2 | Dev Slow 4 | Exit Type ATR | Period 50 | Multiplier 1
ETHUSDT 15min - Length 20 | Dev Fast 1 | Dev Slow 3 | Exit Type Fast Supertrend | Period 50 | Multiplier 1
IOTAUSDT 15min - Length 10 | Dev Fast 1 | Dev Slow 2 | Exit Type Slow Supertrend | Period 50 | Multiplier 1
OMGUSDT 15min - Length 10 | Dev Fast 1 | Dev Slow 4 | Exit Type Slow Supertrend | Period 50 | Multiplier 1
VETUSDT 15min - Length 10 | Dev Fast 3 | Dev Slow 4 | Exit Type Slow Supertrend | Period 50 | Multiplier 1
HOW TO FIND OTHER CONFIGURATIONS
Here are some steps to find suitable configurations
select a market and time frame
enable the Use This Strategy option on the strategy
open the strategy tester panel and select the performance summary
open the strategy configuration and go to properties
change the balance to the same price of the symbol (example: BTCUSDT 60.000, use 60.000 as balance)
go back to the inputs tab and keep changing the parameters until you see the net profit be positive and bigger than the absolute value of the drawdown
in case you can't find a suitable configuration, try other timeframes
Since the tester reflects what happened in the past candles, it's not guaranteed to give the same results. However, this indicator/Strategy can be used with other indicators as a leading signal or confirmation signal.
stop out or margin call price levelsAbstract
This script finds the potential stop out or margin call price levels without considering timeframe.
This script computes stop out or margin call price levels that over leveraged positions buy cheap enough.
You can use this indicator to follow stop hunters.
Introduction
Stop hunting exists because of benefit conflict.
When most of retails traders are in the correct direction, big banks do not want to buy more expensive then retail traders.
Therefore, Big banks create sell pressure to make retail traders misunderstand their trade decisions are wrong.
When retail traders decide to cut loss, it is time big banks buy cheaper.
Many courses recommend average true range as a stop loss reference.
However, in different timeframe, average true ranges are different.
Therefore, we need to have a method to measure potential stop hunting levels which is not relative to timeframe.
There is a method because there are observable levels where over leveraged positions must cut loss.
For example, for a 100 leverage position, its margin call level is 0.005, so 0.005 drawdown is a potential stop hunting level.
Computing
For buy
potential stop out or margin call price level = low * ( 1 - ratio )
For sell
potential stop out or margin call price level = high * ( 1 + ratio )
Parameters
There are 4 levels available for adjusting.
The default values are :
(1) 0.001 : 500 leverage , 50% margin call
(2) 0.0025 : 200 leverage , 50% margin call
(3) 0.005 : 100 leverage , 50% margin call
(4) 0.010 : 50 leverage , 50% margin call
Usage
(1) Find an oversold price level. If you don't want to use an another indicator, you can use previous low.
(2) Memorize their stop out or margin call price levels of that level.
(2) Consider buy near those levels.
(3) If there are quick price rejection near those levels, better entry opportunities.
(4) Take profit and stop loss : you decide.
Conclusion
This script can find potential stop out or margin call price levels that over leveraged positions buy cheap enough.
If you are bored, you can consider find 100 signals you are interested in and share your observation.
Reference
Brokers, leverage and margin call threshold
Bear & Bull Zone Signal StrategySince I love to mix and match, here is something fresh and that actually works on the breakout of Ethereum without losing your ass on lagging indicators.
It blends some of the nice parts of my previous scripts while moving to big boy pants with a twist on the Fibonacci retracement using SMA and EMA at multiple levels to do a sanity check.
Is it too good to be true? Nope, just what happens when a Solution Architect starts messing around with crypto and applies engineering and mathematics to the mix. You get a strategy that really doesn't have high profit losses when you tweak it just the right way.
What's the right tweak you ask?
1. Start with a 30 minute timeframe and set your window start date to the date the market began the bear or bull run
2. Make sure you can see your strategy performance window (not the graph one)
3. Set Stop Loss and Target Profit to 50%
4. Use your mouse wheel or up and down arrows and mess around with the RSI, go down one at a time but no lower than 7. Whichever value displayed the highest long or short gain is the one to pick.
5. Now select long or short only based on whichever one shows the highest gain.
6. Now go to K and D, leave K as 3 and check what happens when D is 4 or 5. Leave D at the value that gives you the highest gain.
7. Now go to EMA Fast and Slow Lengths. Leave Fast at 5 and check what happens when the Slow is moved up to 11 or 12, do the gains go up. If not, check what happens when Slow is moved down to 9, 8, or 7. Whichever gives you the highest gain, leave it there. Now go mess with the fast length, keep in mind that fast must always be less than slow. So check values down to 3 and up to 6. Same concept, mo money...leave it be.
8. Now go mess with the Target Profit, I start at 5, hit enter, then go to 7, hit enter, then 9...up by 2 until I get to 21 to make sure I don't hastily pick a low one and always keep in mind between which values the gain switched from high to low. For example, in this example I published at 11 it was $5k and at 13 it was $3700 for the gains. So after I got up to 21 I went back to 11 and started going up by 0.01 steps until the value dropped, which was at 11.19 so I set it at 11.18.
9. Now stop loss is trickier, you've maximized the gains, which means if you set the stop loss at a low value you will sacrifice gains. Typically by this point your loss is less than 10% with this script. So, my approach is to find the value where the stop loss doesn't change what I've tweaked already. In this example, I did the same start at 5 and go up by 2 and saw that when I went to 17 it stopped changing. So I started going back down by 0.5 and saw at 15.5 the gains went lower again. Now I started going back up in steps of 0.01 and at 15.98 it went back to the high gain I already tweaked for. I kept stop loss there and unleashed the strategy on ETH.
So far so good, no bad trades and it's been behaving pretty well.
Scalping Dips On Trend (by Coinrule)Coinrule's Community is an excellent source of inspiration for our trading strategies.
In these months of Bull Market, our traders opted mostly on buy-the-dips strategies, which resulted in great returns recently. But there has been an element that turned out to be the cause for deep division among the Community.
Is it advisable or not to use a stop-loss during a Bull Market?
This strategy comes with a large stop-loss to offer a safer alternative for those that are not used to trade with a downside protection.
Entry
The strategy buys only when the price is above the Moving Average 50 , making it less risky to buy the dip, which is set to 2%.
The preferred time frame is 1-hour.
The stop-loss is set to be quite loose to increase the chances of closing the trade in profit, yet protecting from unexpected larger drawdowns that could undermine the allocation's liquidity.
Exit
Stop loss: 10%
Take Profit: 3%
In times of Bull Market, such a trading system has a very high percentage of trades closed in profit (ranging between 70% to 80%), which makes it still overall profitable to have a stop-loss three times larger than the take profit.
Pro tip: use a larger stop-loss only when you expect to close in profit most of the trades!
The strategy assumes each order to trade 30% of the available capital and opens a trade at a time. A trading fee of 0.1% is taken into account.
VWMA_withATRstops_strategyThis strategy follows the trend when price is above VWMA indicator. I have modified entry and exit rules to get most out of it.
Instead of entering LONG when price crosses above VWMA, I have used RSI(14) of VWMA . that way it skips the false signals. (some extent)
ENTRY
========
1. VWMA setting is 33
2. When RSIofVwma is above 30 enter Long ( and also checks if price already broke the ATR Stop above line )
Stop Loss and Exits
==================
1. Exit is when price breaks the ATR stop loss
2. ATR setting is set as same VWMA Length and multiplier is 3.5
3. STOP Loss that I mentioned in the settings is being used to calculate the how many units can be purchased based on risk of capital value.
Note: There is NO hard stop loss. having above ATR stop loss works as Trailing stop loss
Warning
=======
For the educational purposes only
mForex - 3 Moving Average - Parabolic SARScript identifies the uptrend and downtrend according to the average price of the MA and PSAR lines.
Rules of sale:
- Open short positions when:
MA12 cuts MA26 and MA52 from the top.
PSAR dots on the price line
- Stop loss:
At the dots of PSAR and use Trailing Stop facing up
On the nearest peak
- Profit-taking: Corresponding ratio of R: R (1: 2)
- Open long positions when:
MA12 cuts MA26 and MA52 from the bottom.
PSAR dots below the price line
- Stop loss:
At the dots of PSAR and use Trailing Stop facing down
Below the nearest peak
- Profit-taking: Corresponding ratio of R: R (1: 2)
MACD BF 🚀Customised MACD strategy with dynamic stop losses based on ATR.
Signals are generated when the delta value becomes positive or negative (when it crosses the zero line)
Stop losses are printed on the chart in yellow and orange. They are based on recent average True Range to allow for volatility.
INSTRUCTIONS
Green background = long
Red background = short
Yellow dotted line = stop loss placement for long
Orange dotted line = stop loss placement for short
White background = you have been stopped out, wait patiently for the next signal
Center of Gravity BF 🚀Thanks to HPotter for the code I based this strategy on.
Center of Gravity calculation is based here on a linear regression function using the least squares method.
We use this to calculate a channel consisting of 2 lines, green and red on the chart
This strategy employs a dynamic stop loss function that measures stop loss placement based on recent ATR.
How signals are generated:
Price closes above green line = Go Long
Price closes below red line = Go Short
Yellow dotted line = stop loss based on long entry
Orange dotted line = stop loss based on short entry
INSTRUCTIONS
Green background = Go Long, put your stop loss at the yellow dotted line
Red background = Go Short, put your stop loss at the orange dotted line
NB: The stop losses printed on the chart are calculated from the point of entry on a trade, if you make a different entry to what is indicated, the corresponding stop loss will be different to what the indicator displays.
ATR based Pivots mcbwHey everyone this is an exciting new script I have prepared for you.
I was reading an old forex bulletin article some time ago when I came across this: solar.murty.net (or you can download the full bulletin with lots of other good articles here: www.forexfactory.com).
You can already buy this for metatrader (www.mql5.com) so I figured to make it for free for tradingview.
This bulletin suggested that you can reasonably predict daily volatility by adding or subtracting multiples of the daily ATR to the daily opening. Using this you can choose multiples to use as price targets and alternatively as stop losses. For example, if you already have a sense of market direction you can buy at market open place a stop loss at - 1 daily ATR and a profit target at + 3 ATRs for a risk to reward ratio of 3. If you are looking for smaller/quicker moves with a ratio of 3 you can have a stop loss at -0.25 ATR and a take profit at +0.75 ATR.
Alternatively this article also suggests to use this method to catch volatility breakouts. If price is higher than the + 1 ATR area then you can safely assume it will be going to the +2 ATR area so you can put a buy stop at + 1 ATR with a profit target at + 2 ATR with a stop loss at +0.5 ATR to catch a volatility breakout with a risk to reward ratio of 2!
Even further there are methods that you can use with ATRs of multiple window sizes, for example by opening two copies of this indicator and measuring recent volatility with a 1 week window and long term volatility within a 1 month window. If the short term volatility is crossing the long term volatility then there is a high probability chance that even more price movement will occur.
However I have found that this method is good for more than daily volatility , it can also be used to measure weekly volatility , and monthly volatility and use these multiples as good long term price targets.
To select if you want daily, weekly, or monthly values of the ATR of volatility you're using go to the settings and click on the options in the "Opening period". The default window of the ATR here is 14 periods, but you can change this if you want to in "ATR period". Most importantly you are able to select which multiples of the ATR you would like to use in the settings in "ATR multiple 1" which is the green line, "ATR multiple 2" which is the blue line, and "ATR multiple 3" which is the purple line. You can select any values you want to put in these, the choice of 0.25, 0.5, and 1 is not special, some people use fibonacci numbers here or simply 0.33, 0.66, and 0.99.
Repainting issue: This script uses the daily value of the Average True Range (ATR), which measures the volatility that is happening today. If price becomes more volatile then the value of the ATR can increase throughout the day, but it can never decrease. What this means is that the ATR based pivots are able to expand away from the opening price, which should not affect the trades that you take based on these areas. If you base your take profit on one of these ATR multiples and the daily volatility increase this means that your take profit area will be closer to your entry than the ATR multiple. Meaning that your trades will be more conservative.
While this all may sound very technical it is super intuitive, throw this on your chart and play around with it :)
Happy trading!
Trend is your friendThis indicator evaluates the trend based on crosses of two McGinley moving averages. It paints candles accordingly (it does not repaint), so you can see what the indicator is saying more clearly and stay in your trade until you see a period of consolidation or a reversal. You can control how far away those moving averages need to be for you to consider it a trend. If this distance is not met candles color is not changed and it shows you that the market is in a period of consolidation. I also added visualization of RSI, so you can have an easier time finding appropriate profit targets. For stop loss I would recommend placing it a couple points above or below the previous high / low that is located above / below you final target for entry. You can also use a certain percentage that works for you. I tried adding a stop loss based on ATR, but I did not like the results. Using market structure is a better choice in my opinion.
Here is a basic trading strategy for the default settings:
Wait for the indicator to start printing a series of green or red candles. After that you can enter a long or a short around moving averages. Another valid place to entry is the specific RSI zone. If we are in an uptrend buying when RSI is oversold can be beneficial as you expect market to recover. I do not recommend changing RSI from 14. Vice versa for the downtrend. It gives you an edge as you know at what price RSI will be oversold and allows you to place trades in advance. Pretty neat! You need to realize that no indicator or strategy can give you an exact entry. There will always be some margin of error. What I wanted to say is that if there is a strong trend up and you buy around your key moving averages and when RSI is oversold you entered in good places and there is a pretty good chance you will make money.
Time frame settings:
If you want to use tighter stop losses I would recommend sticking to 15m. Do not go lower. It is not worth the stress. 1h and 4h seems to be very good as well, but expect your stop losses to be wider. What I personally tend to do is display 15m, 30m and 1h and compare it. Think of it as a short, mid and long term. That way you can see things little bit better.
Examples:
1H chart BTC
4h chart EUR / USD
1D chart NASDAQ
15m chart BTC (Daytrading)
That last chart shows that even if you were longing while the trend was about to change you still had a good chance to close it with a little profit and switch to short easily. The default settings is what has worked the best for me. Feel free to change them as you see fit and do not forget to let me know if you find something that works better :)
Notes:
Either disable wick display or change it to a neutral color like gray for both green and red candles. Unfortunately pine script does not allow wick painting, so if you have red / green wicks it will look terrible. If RSI visualization makes your candles look too small you can go to settings and disable the display of individual RSI levels. You will still be able to see the zones, but the scale won't be affected.
My script//@version=5
indicator("XAUUSD High Win-Rate Strategy", shorttitle="XAUUSD HWR", overlay=true)
// ============================================================================
// XAUUSD HIGH WIN-RATE STRATEGY INDICATOR
// Based on Dual-Phase Momentum Filter System
// Designed for M1, M5 timeframes with H1/H4 bias confirmation
// ============================================================================
// Input Parameters
ma_length = input.int(55, title="MA Channel Length", minval=1, maxval=200)
atr_length = input.int(14, title="ATR Length", minval=1, maxval=50)
atr_multiplier = input.float(2.5, title="ATR Stop Loss Multiplier", minval=1.0, maxval=5.0, step=0.1)
rr_ratio = input.float(1.5, title="Risk:Reward Ratio", minval=1.0, maxval=3.0, step=0.1)
htf_bias = input.timeframe("60", title="Higher Timeframe for Bias")
show_levels = input.bool(true, title="Show Entry/Exit Levels")
show_signals = input.bool(true, title="Show Buy/Sell Signals")
show_channel = input.bool(true, title="Show MA Channel")
// ============================================================================
// CORE CALCULATIONS
// ============================================================================
// Moving Average Channel (55-period High/Low)
ma_high = ta.sma(high, ma_length)
ma_low = ta.sma(low, ma_length)
// Heiken Ashi Calculations
ha_close = (open + high + low + close) / 4
var float ha_open = na
ha_open := na(ha_open ) ? (open + close) / 2 : (ha_open + ha_close ) / 2
ha_high = math.max(high, math.max(ha_open, ha_close))
ha_low = math.min(low, math.min(ha_open, ha_close))
// Higher Timeframe Bias (200 SMA)
htf_sma200 = request.security(syminfo.tickerid, htf_bias, ta.sma(close, 200), lookahead=barmerge.lookahead_off)
// ATR for Stop Loss Calculation
atr = ta.atr(atr_length)
// RSI for Additional Confirmation
rsi = ta.rsi(close, 14)
// ============================================================================
// SIGNAL LOGIC
// ============================================================================
// Channel Filter - No trades when price is within the channel
in_channel = close > ma_low and close < ma_high
outside_channel = not in_channel
// Heiken Ashi Color
ha_bullish = ha_close > ha_open
ha_bearish = ha_close < ha_open
// Higher Timeframe Bias
htf_bullish = close > htf_sma200
htf_bearish = close < htf_sma200
// Entry Conditions
long_condition = outside_channel and close > ma_high and ha_bullish and htf_bullish
short_condition = outside_channel and close < ma_low and ha_bearish and htf_bearish
// Entry Signals (only on bar close to avoid repainting)
long_signal = long_condition and not long_condition
short_signal = short_condition and not short_condition
// ============================================================================
// TRADE LEVELS CALCULATION
// ============================================================================
var float entry_price = na
var float stop_loss = na
var float take_profit = na
var string trade_direction = na
// Calculate levels for new signals
if long_signal
entry_price := close
stop_loss := close - (atr * atr_multiplier)
take_profit := close + ((close - stop_loss) * rr_ratio)
trade_direction := "LONG"
if short_signal
entry_price := close
stop_loss := close + (atr * atr_multiplier)
take_profit := close - ((stop_loss - close) * rr_ratio)
trade_direction := "SHORT"
// ============================================================================
// VISUAL ELEMENTS
// ============================================================================
// MA Channel - Store plot IDs for fill function
ma_high_plot = plot(show_channel ? ma_high : na, color=color.blue, linewidth=1, title="MA High")
ma_low_plot = plot(show_channel ? ma_low : na, color=color.red, linewidth=1, title="MA Low")
// Fill the channel
fill(ma_high_plot, ma_low_plot, color=color.new(color.gray, 90), title="MA Channel")
// Higher Timeframe SMA200
plot(htf_sma200, color=color.purple, linewidth=2, title="HTF SMA200")
// Entry Signals
plotshape(show_signals and long_signal, title="Long Signal", location=location.belowbar,
style=shape.triangleup, size=size.normal, color=color.green)
plotshape(show_signals and short_signal, title="Short Signal", location=location.abovebar,
style=shape.triangledown, size=size.normal, color=color.red)
// Trade Levels
entry_plot = plot(show_levels and not na(entry_price) ? entry_price : na,
color=color.yellow, linewidth=2, style=line.style_dashed, title="Entry Price")
stop_plot = plot(show_levels and not na(stop_loss) ? stop_loss : na,
color=color.red, linewidth=2, style=line.style_dotted, title="Stop Loss")
target_plot = plot(show_levels and not na(take_profit) ? take_profit : na,
color=color.green, linewidth=2, style=line.style_dotted, title="Take Profit")
// ============================================================================
// ALERTS
// ============================================================================
// Alert Conditions
alertcondition(long_signal, title="Long Entry Signal",
message="XAUUSD Long Entry: Price={{close}}, SL=" + str.tostring(stop_loss) + ", TP=" + str.tostring(take_profit))
alertcondition(short_signal, title="Short Entry Signal",
message="XAUUSD Short Entry: Price={{close}}, SL=" + str.tostring(stop_loss) + ", TP=" + str.tostring(take_profit))
// ============================================================================
// INFORMATION TABLE
// ============================================================================
if barstate.islast and show_levels
var table info_table = table.new(position.top_right, 2, 8, bgcolor=color.white, border_width=1)
table.cell(info_table, 0, 0, "XAUUSD Strategy Info", text_color=color.black, text_size=size.normal)
table.cell(info_table, 1, 0, "", text_color=color.black)
table.cell(info_table, 0, 1, "Current Price:", text_color=color.black)
table.cell(info_table, 1, 1, str.tostring(close, "#.##"), text_color=color.black)
table.cell(info_table, 0, 2, "ATR (14):", text_color=color.black)
table.cell(info_table, 1, 2, str.tostring(atr, "#.##"), text_color=color.black)
table.cell(info_table, 0, 3, "RSI (14):", text_color=color.black)
table.cell(info_table, 1, 3, str.tostring(rsi, "#.##"), text_color=color.black)
table.cell(info_table, 0, 4, "HTF Bias:", text_color=color.black)
table.cell(info_table, 1, 4, htf_bullish ? "BULLISH" : "BEARISH",
text_color=htf_bullish ? color.green : color.red)
table.cell(info_table, 0, 5, "In Channel:", text_color=color.black)
table.cell(info_table, 1, 5, in_channel ? "YES" : "NO",
text_color=in_channel ? color.red : color.green)
if not na(trade_direction)
table.cell(info_table, 0, 6, "Last Signal:", text_color=color.black)
table.cell(info_table, 1, 6, trade_direction,
text_color=trade_direction == "LONG" ? color.green : color.red)
table.cell(info_table, 0, 7, "Risk/Reward:", text_color=color.black)
table.cell(info_table, 1, 7, "1:" + str.tostring(rr_ratio, "#.#"), text_color=color.black)
// ============================================================================
// BACKGROUND COLORING
// ============================================================================
// Color background based on trend and channel status
bg_color = color.new(color.white, 100)
if htf_bullish and not in_channel
bg_color := color.new(color.green, 95)
else if htf_bearish and not in_channel
bg_color := color.new(color.red, 95)
else if in_channel
bg_color := color.new(color.yellow, 95)
bgcolor(bg_color, title="Background Trend Color")
// ============================================================================
// STRATEGY NOTES
// ============================================================================
// This indicator implements the Dual-Phase Momentum Filter System:
// 1. MA Channel Filter: Avoids trades when price is between 55-period high/low MAs
// 2. Heiken Ashi Confirmation: Requires momentum alignment for entries
// 3. Higher Timeframe Bias: Uses 200 SMA on higher timeframe for direction
// 4. ATR-based Risk Management: Dynamic stop losses based on volatility
// 5. Fixed Risk:Reward Ratio: Consistent 1:1.5 profit targets
//
// Usage Instructions:
// 1. Apply to M1 or M5 timeframe for optimal signals
// 2. Set higher timeframe to H1 or H4 for bias confirmation
// 3. Wait for signals outside the MA channel
// 4. Enter trades only when all conditions align
// 5. Use provided stop loss and take profit levels
// 6. Risk no more than 0.5% of account per trade
//
// Best Trading Sessions: Asian and New York
// Avoid: Low liquidity periods and major news events